Device and method for providing user-customized content

ABSTRACT

A device and a method for providing user-customized content are provided. The method, performed by the device, of providing information regarding at least one primary chat window includes: acquiring a plurality of messages included in at least one primary chat window; determining that a specific event has occurred, based on the acquired plurality of messages; generating a secondary chat window for informing a user of the device about the occurred event; and displaying guidance information about the occurred event in the secondary chat window.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority from Chinese Patent Application No.201510901427.3, filed on Dec. 9, 2015 in the State Intellectual PropertyOffice (SIPO) of the People's Republic of China, and Korean PatentApplication No. 10-2016-0147637, filed on Nov. 7, 2016 in the KoreanIntellectual Property Office, the disclosures of which are incorporatedherein in their entireties by reference.

BACKGROUND 1. Field

Apparatuses and methods consistent with exemplary embodiments relate toproviding user-customized content, and more particularly, to providing,to a user, information regarding a message to be transmitted andreceived through a plurality of chat windows.

2. Description of the Related Art

Through developments in multimedia and network technologies, a user maycommunicate with other users more conveniently than ever by usingvarious computing devices. The user can conveniently acquire a vastquantity of content from other users by using these devices, but it issometimes difficult for the user to effectively sift through the vastamount of information acquired from the received messages. Accordingly,there is a demand for a technique for providing user-customized contentand enabling a user to efficiently acquire necessary information.

SUMMARY

One or more exemplary embodiments provide a device and a method forproviding information regarding at least one primary chat window.

According to an aspect of an exemplary embodiment, there is provided amethod including: acquiring a plurality of messages included in at leastone primary chat window; determining that a specific event has occurred,based on the acquired plurality of messages; generating a secondary chatwindow for informing a user of the device about the occurred event; anddisplaying guidance information about the occurred event in thesecondary chat window.

According to an aspect of another embodiment, there is provided a deviceincluding: a display; a processor; and a memory configured to storeinstructions which, when executed by the processor, cause the processorto provide information regarding at least one primary chat windowthrough the display, acquire a plurality of messages included in the atleast one primary chat window, determine, based on the acquiredplurality of messages, that a specific event has occurred, generate asecondary chat window for informing a user about the occurred event, anddisplay guidance information about the occurred event in the secondarychat window.

According to an aspect of another exemplary embodiment, there isprovided a non-transitory computer-readable recording medium havingrecorded thereon a computer-readable program for executing the method.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and/or other aspects will become apparent and more readilyappreciated from the following description of exemplary embodiments,taken in conjunction with the accompanying drawings in which:

FIG. 1 illustrates displaying, in a secondary chat window, informationregarding messages in a primary chat window, according to some exemplaryembodiments;

FIG. 2 is a flowchart of a method by which a device processesinteraction data, according to some exemplary embodiments;

FIG. 3 is a flowchart of a method of providing guidance informationabout messages in a chat window, according to some exemplaryembodiments;

FIG. 4 is a flowchart of a method of determining the occurrence of apreset event in a chat window, according to some exemplary embodiments;

FIG. 5 is a flowchart of a method of displaying guidance informationabout an occurred event in the secondary chat window when the presetevent has occurred, according to some exemplary embodiments;

FIGS. 6A and 6B illustrate the device providing a comment message basedon a user schedule, according to some exemplary embodiments;

FIG. 7 illustrates the device displaying, in a secondary chat window3070, a comment message for informing that a blocked message has beenreceived, according to some exemplary embodiments;

FIGS. 8A and 8B illustrate the device displaying, in a secondary chatwindow 3080, search information about an occurred event, according tosome exemplary embodiments;

FIG. 9 is a flowchart of a method of providing, to another user througha chat window, a response message input from a user through thesecondary chat window 3000, according to some exemplary embodiments;

FIGS. 10A and 10B illustrate the device receiving messages from otherusers through a plurality of chat windows, according to some exemplaryembodiments;

FIG. 11 illustrates the device providing, to the user through asecondary chat window, a recommended response message related to theevents occurred in FIG. 10, according to some exemplary embodiments;

FIGS. 12A and 12B illustrate displaying, in chat windows, final responsemessages determined according to the recommended response message ofFIG. 11, according to some exemplary embodiments;

FIG. 13 is a flowchart of a method of outputting, as a speech, a summarymessage of an occurred event, according to some exemplary embodiments;

FIG. 14 is a flowchart of a method of outputting, as a speech, a summarymessage of an occurred event according to the existence of a speechsegment, according to some exemplary embodiments;

FIG. 15 illustrates the device providing a message through the secondarychat window 3000, according to some exemplary embodiments;

FIG. 16 illustrates a graphic user interface (GUI) for setting levels ofother users, according to some exemplary embodiments;

FIGS. 17A and 17B illustrate the device displaying summary messages ofother users and a summary message of a user group in a secondary chatwindow, according to some exemplary embodiments;

FIGS. 18A, 18B and 18C illustrate illustrates the device displaying, ina secondary chat window, multimedia content included in a chat window,according to some exemplary embodiments;

FIGS. 19A, 19B, 20A and 20B illustrate the device displaying messages ofother users by using a chat window and secondary chat windows, accordingto some exemplary embodiments;

FIG. 21 is a flowchart of a method of classifying and displaying, in thesecondary chat window, messages included in a chat window for eachcategory, according to some exemplary embodiments;

FIGS. 22A, 22B and 22C illustrate classifying messages included in achat window for each category and generating a secondary chat window foreach category, according to some exemplary embodiments;

FIGS. 23A, 23B and 23C illustrate the device displaying a secondary chatwindow when a preset event occurs while performing a predeterminedoperation, according to some exemplary embodiments; and

FIGS. 24 and 25 are block diagrams of configurations of a deviceaccording to some exemplary embodiments.

DETAILED DESCRIPTION

Reference will now be made in detail to exemplary embodiments, withreference to the accompanying drawings. In the drawings, partsirrelevant to the description are omitted to clearly describe theexemplary embodiments, and like reference numerals refer to likeelements throughout the specification. In this regard, the presentexemplary embodiments may have different forms and should not beconstrued as being limited to the descriptions set forth herein.

Throughout the specification, when it is described that a certainelement is “connected” to another element, it should be understood thatthe certain element may be “directly connected” to another element or“electrically connected” to another element via another element in themiddle. In addition, when a component “includes” an element, unlessthere is another opposite description thereto, it should be understoodthat the component does not exclude another element but may furtherinclude another element.

As used herein, the term “and/or” includes any and all combinations ofone or more of the associated listed items. Expressions such as “atleast one of,” when preceding a list of elements, modify the entire listof elements and do not modify the individual elements of the list.

Hereinafter, the present disclosure is described in detail withreference to the accompanying drawings.

FIG. 1 illustrates displaying, in a secondary chat window 3000,information regarding messages in a primary chat window, according tosome exemplary embodiments.

As shown in FIG. 1, a device 1000 may transmit and receive messages toand from other devices through at least one chat window (i.e., a primarychat window) provided by a chat application installed in the device1000, analyze the messages in the chat window, and provide informationregarding the analyzed messages to a user of the device 1000 by usingthe secondary chat window 3000.

The device 1000 may display a chat window list 2000 on a screen, and thechat window list 2000 may include an identification value (i.e., labelor tag) of at least one chat window. A chat window may be a messagewindow provided by a chat application and generated and provided foreach group but is not limited thereto.

The device 1000 may display, in a secondary chat window 3000,information regarding messages in the at least one chat window includedin the chat window list 2000. The device 1000 may analyze the messagesin the at least one chat window, generate guidance information about themessages in the at least one chat window, and display the generatedguidance information in the secondary chat window 3000. The guidanceinformation may be information for informing the user about messages ina primary chat window and receiving feedback from the user. The device1000 may generate the secondary chat window 3000 for displaying theguidance information and display the guidance information in thesecondary chat window 3000 in an interactive form. The guidanceinformation may include a summary message and a comment message withrespect to messages in a primary chat window but is not limited thereto.The summary message may be a message generated by summarizing aplurality of messages in a primary chat window, and the comment messagemay be a message indicating a comment related to a plurality of messagesin a primary chat window. In addition, the device 1000 may receive auser input through the secondary chat window 3000 and generate arecommended response message based on the received user input.

The device 1000 may be, for example, a smartphone, a personal computer(PC), a tablet PC, a smart TV, a cellular phone, a personal digitalassistant (PDA), a laptop computer, a media player, a micro-server, aglobal positioning system (GPS) device, an e-book terminal, a digitalbroadcast terminal, a navigation machine, a kiosk, an MP3 player, adigital camera, a wearable device, another mobile or non-mobilecomputing device but is not limited thereto. Alternatively, the device1000 may include various devices, such as an electronic blackboard and atouch table capable of receiving a touch input. Alternatively, thedevice 1000 may be a watch, eye glasses, a hairband, or a ring having acommunication function and a data processing function.

FIG. 2 is a flowchart of a method by which the device 1000 processesinteraction data, according to some exemplary embodiments.

In operation S200, the device 1000 may acquire interaction datagenerated by interactions among multiple users. For example, theinteraction data may be data transmitted and received among usersthrough a chat application. The device 1000 may acquire interaction dataamong multiple users from data recorded in chat software or othersoftware that includes text. The interaction data may be acquired by thedevice 1000 or an interaction data processing device. The device 1000 orthe interaction data processing device may acquire the interaction databy monitoring real-time or non-real-time interaction data.

In operation S210, the device 1000 may extract summary information fromthe interaction data. The device 1000 may extract summary informationcorresponding to important information from the interaction data. Theimportant information may include subject information, contactinformation, group information, a relationship with a contact, urgencyof the interaction data, and/or a correlation between a user and theinteraction data. The relationship with a contact may be acquired byanalyzing information related to the contact and/or an interactionhistory with the contact, where the information related to the contactmay include contact information in an address book, a schedule relatedto the contact in a scheduling table and/or memorandum, or contactinformation in a social network application. The interaction historywith the contact may include a call history with the contact, a shortmessage history with the contact, an email history with the contact,and/or an interaction history with the contact in other social networkapplications.

In addition, the device 1000 may classify the summary informationaccording to at least one piece of information among an interaction timeof the interaction data, a matter of interest of the user, arelationship with the contact, an appointment of the contact in thesummary information, and an appointment of the user in the summaryinformation and extract the classified summary information.

For example, when the important information is subject information, thedevice 1000 may display the important information in an order determinedaccording to the popularity of each subject, a correlation between theuser and each subject, importance of the user in each subject, and/or apredetermined subject. As another example, when the importantinformation is contact information, the device 1000 may display theimportant information in an order determined according to a contactfrequency with the contact, a relationship with the contact, and/or apredetermined contact.

A correlation between a subject and the matter of interest of the usermay be acquired by analyzing an activity history of the user anddetermining the correlation between the subject and the matter ofinterest of the user. The activity history may include searching forcontacts, clicking on contacts, transmitting contacts, and/or editingcontacts.

According to an exemplary embodiment, the important information mayinclude predetermined event information, and the device 1000 may extractsummary information corresponding to the predetermined event informationfrom the interaction data. The predetermined event information mayinclude predetermined content mentioned in the interaction data,responded predetermined content, information regarding a predeterminedcontact who has transmitted interaction content, and/or content relatedto a predetermined subject.

In operation S220, the device 1000 may output the summary information.The device 1000 may display important information, and then outputsummary information corresponding to the important information when auser input related to the displayed important information is received.In addition, the device 1000 may output classified summary information.

According to an exemplary embodiment, the device 1000 may output promptinformation about a predetermined event, and then output summaryinformation corresponding to the predetermined event when a user inputrelated to the prompt information is detected.

According to another exemplary embodiment, the device 1000 may generatesummary information by editing summary content in which interaction datais summarized. Alternatively, the device 1000 may generate summaryinformation by editing summary content corresponding to importantinformation.

The operation in which the device 1000 outputs the summary informationmay include processing the summary information and outputting theprocessed summary information, the processing being performed by using amethod of acquiring information about each contact corresponding tosummary information about interaction data and generating customizedsummary information corresponding to each contact; a method ofgenerating relevant summary information corresponding to summary contentof interaction data; a method of generating multimedia summaryinformation according to text summary information and multimediainformation in summary content of interaction data; a method ofdetecting predetermined content and/or a predetermined contact to beblocked in summary content of interaction data and then blocking datarelated to the predetermined content and/or the predetermined contact inthe summary content; and/or a method of generating summary informationabout a current situation and/or a current device state according tocurrent situation information and/or current device state informationabout a terminal device.

In the method of acquiring information about each contact correspondingto summary information about interaction data and generating customizedsummary information corresponding to each contact, the contactinformation may include a chat habit of a contact, a relationshipbetween the contact and the user, and/or attribute information about thecontact. In addition, the chat habit of the contact may include a wordused by the contact with high frequency, a phrase used by the contactwith high frequency, a sentence structure used by the contact with highfrequency, and/or an expression by the contact with high frequency. Inaddition, the attribute information about the contact may include a job,an age, a gender, and/or an image of the contact. In addition, the chathabit of the contact may be acquired by analyzing an interaction historywith the contact. In addition, the attribute information about thecontact may be acquired by analyzing information about the contactand/or the interaction history with the contact.

According to the method of generating relevant summary informationcorresponding to summary content of interaction data, when content forrequesting for responses from a plurality of contact is included in thesummary content of the interaction data, responses of the contact may becollected to configure relevant summary information. Alternatively, whencontent for requesting for a response of the user is included in thesummary content of the interaction data, a conflict between the contentfor requesting for a response of the user and a schedule of the user ora conflict between the content for requesting for a response of the userand a current place is detected, and then relevant summary informationincluding a conflict alert may be generated. Alternatively, when contentrelated to a hot event (e.g., an noteworthy event, an upcoming event,etc.) is included in the summary content of the interaction data,information related to the hot event is searched for, and relevantsummary information including retrieved information may be generated.

In the method of generating multimedia summary information according totext summary information and multimedia information in summary contentof interaction data, the multimedia summary information may includebackground music, video, image, speech, and/or text summary information.

The method of generating summary information about a current situationand/or a current device state according to current situation informationand/or current device state information about a terminal device mayinclude: determining a current state of the user according to thecurrent situation information and/or the current device stateinformation; and generating summary information including semanticcharacteristics corresponding to the current state of the user.

According to an exemplary embodiment, the method of FIG. 2 may furtherinclude detecting, by the device 1000, a user input on a region relatedto the output summary information and then moving to a display interfacefor displaying interaction data corresponding to the summaryinformation. According to an exemplary embodiment, when the summaryinformation corresponds to at least two contact groups, the device 1000may display interaction data corresponding to the summary information ingroups corresponding to the contact groups in the display interface.

According to an exemplary embodiment, the outputting of the summaryinformation extracted from the interaction data may be performed byusing a predetermined speech characteristic, outputting summaryinformation corresponding to a contact as a speech by using a speechcharacteristic of the contact, determining a speech pattern according toa speech characteristic and current situation information and/or currentdevice state information about a terminal device and outputting summaryinformation as a speech by using the speech characteristic and thespeaking manner.

In addition, the speech characteristic of the contact may be acquired bycollecting speech segments of the contact and acquiring a speechcharacteristic of the contact from the collected speech segments or bypredicting a speech characteristic according to attribute informationabout the contact and/or an interaction history with the contact.

When a speech characteristic is acquired from collected speech segments,the method of FIG. 2 may include: learning a speech model for synthesisby using the collected speech segments of the contact; and acquiring aspeech characteristic customized to the contact.

According to an exemplary embodiment, the device 1000 may analyzeinteraction data to acquire content for requesting for a response of theuser and generate and output a response customized according to theacquired content.

When the device 1000 generates and outputs a response customizedaccording to content for requesting for a response of the user, thedevice 1000 may process the content for requesting for a response of theuser according to a relationship with a contact by which the response isto be received, attribute information about the user, and/or attributeinformation about the contact by which the response is to be received inorder to generate and output the customized response.

When the device 1000 outputs summary information extracted frominteraction data, the device 1000 may classify the summary informationaccording to an interaction time of the interaction data, a topic ofinterest of the user, a relationship with a contact, an appointment ofthe contact in the summary information, and/or an appointment of theuser in the summary information, and output the classified summaryinformation.

FIG. 3 is a flowchart of a method of providing guidance informationabout messages in a primary chat window, according to some exemplaryembodiments.

In operation S300, the device 1000 may acquire a plurality of messagesincluded in at least one chat window. The device 1000 may transmit andreceive messages to and from other devices through a chat window andmonitor the messages transmitted and received through the chat window.The device 1000 may identify whether the acquired messages have beenread by the user of the device 1000. In addition, the device 1000 mayacquire, from a chat window, messages from other devices for a presettime duration.

When a plurality of chat applications are installed in the device 1000,the device 1000 may acquire messages received from other devices bymonitoring chat windows provided by the plurality of chat applications.

In operation S320, the device 1000 may determine that a preset event hasoccurred, based on the acquired plurality of messages. The device 1000may determine that the preset event has occurred, based on a messagereceived from another device and not read by the user of the device 1000from among messages in a chat window. The preset event may be preset bythe user, and when it is determined that content of a message indicatesa preset situation, it may be determined that the preset event hasoccurred.

For example, the device 1000 may use various natural language analysisschemes to understand the meaning of an acquired message and determinewhether the preset event has occurred, based on the meaning of theacquired message. For example, when a message including the name of theuser of the device 1000 is received, when a message is received from apreset other user, when a message related to a predetermined subject setby the user is received, when a message related to predetermined contentset by the user is received, or when a message is received from someusers selected from among users in a chat window, it may be determinedthat the preset event has occurred, but the present exemplary embodimentis not limited thereto.

In addition, the device 1000 may change the preset event by receiving auser input for changing an event. When the device 1000 determines thatthe preset event has occurred, from the plurality of messages acquiredfrom the chat window, the device 1000 may proceed to operation S340.

In operation S340, the device 1000 may generate the secondary chatwindow 3000 for informing the user about the occurred event. The device1000 may add the user of the device 1000 and the device 1000 itself asparticipants in the chat room of the secondary chat window 3000, and theuser may communicate with the device 1000 in the secondary chat window3000 as if the device 1000 is another user to communicate with. Thedevice 1000 may match a plurality of primary chat windows with thesecondary chat window 3000 and generate the secondary chat window 3000to inform the user of information regarding events respectivelyoccurring in the plurality of primary chat windows.

When the preset event has occurred, the device 1000 may automaticallygenerate the secondary chat window 3000 but the disclosure is notlimited thereto. When the preset event has occurred, the device 1000 maydisplay a graphic user interface (GUI) for asking the user whether theuser wishes to receive guidance information through the secondary chatwindow 3000, and generate the secondary chat window 3000 when a userinput for receiving guidance information is input through the GUI.

In operation S360, the device 1000 may display guidance informationabout the occurred event in the secondary chat window 3000. The guidanceinformation may indicate the occurrence of the event to the user and mayinclude, for example, a summary message for informing the user about theoccurred event, a comment message for providing to the user a commentrelated to the occurred event, search information retrieved by thedevice 1000 related to the occurred event, and a recommended responsemessage for recommending a response of the user in relation to theevent, but the disclosure is not limited thereto.

In addition, the device 1000 may display the guidance information in thesecondary chat window 3000 in a form of a chat message to the user. Forexample, the device 1000 may display a speech bubble including theguidance information in the secondary chat window 3000 together with apredetermined identification value associated with the device 1000. Inaddition, the device 1000 may receive a user input for inputting amessage through the secondary chat window 3000 and input the inputmessage into a chat window corresponding to the input message.

FIG. 4 is a flowchart of a method of determining the occurrence of apreset event in a primary chat window, according to some exemplaryembodiments.

In operation S400, the device 1000 may set events for each category. Thedevice 1000 may select a predetermined category by receiving a userinput and set a predetermined event related to the selected category. Acategory may be a criterion for identifying a message type. For example,the category may be identified according to a subject of a dialogue or asubject of a message, such as “food” or “sports.” However, the presentexemplary embodiment is not limited thereto, and a category may beidentified according to, for example, an identify of a user of anotherdevice 1000 which has transmitted a message or an operation of thedevice 1000 requested by a message.

For example, the device 1000 may select a category, “receiving amessage”, and set an event, “receiving a message from a user A” as apriority event. Even after setting events for each category, the device1000 may change a category and/or an event by receiving a user input forchanging the category and/or the event.

In operation S420, the device 1000 may identify a keyword included in atleast one message. The device 1000 may identify at least one keywordfrom messages acquired from at least one chat window. The device 1000may identify a keyword from a message according to a set event. In thiscase, keywords corresponding to events may be assigned for each event.

In operation S440, the device 1000 may analyze the meaning of a messageincluding the keyword. The device 1000 may analyze the meaning of amessage that includes a keyword related to an event from among messagesin a primary chat window. In addition, the device 1000 may analyze themeaning of the messages displayed immediately before and after themessage including a keyword related to an event from among messages in aprimary chat window.

In addition, the device 1000 may analyze the meaning of a message byusing various natural language analysis schemes. For example, the device1000 may analyze the meaning of a message by dividing a sentenceincluded in the message, analyze morphemes in the sentence, and/oranalyzing vocabulary of words in the sentence, but the disclosure is notlimited thereto.

In operation S460, the device 1000 may determine the occurrence of apreset event. The device 1000 may determine whether the preset event hasoccurred in a primary chat window, based on the meaning of the message,which has been analyzed in operation S440. For example, the device 1000may determine which category of events a message is related to, based onthe meaning of the message and determine which event from among theevents in the determined category has occurred based on the message. Inaddition, for example, when a predetermined keyword is included in amessage, the device 1000 may determine that the preset event hasoccurred. Alternatively, even when a predetermined keyword is includedin a message, the device 1000 may determine that the preset event hasnot occurred, according to the meaning of the message.

FIG. 5 is a flowchart of a method of displaying guidance informationabout an occurred event in the secondary chat window 3000 when thepreset event has occurred, according to some exemplary embodiments.

In operation S500, the device 1000 may display a summary message of anoccurred event. The device 1000 may generate a summary message of anoccurred event and display the generated summary message in thesecondary chat window 3000. The device 1000 may generate a summarymessage of an occurred event by analyzing the meaning of at least onemessage associated with the occurrence of the event. For example, thedevice 1000 may generate a summary message including an identificationvalue of a user of another device, which has transmitted a message thatcaused the occurrence of an event and a phrase describing the occurredevent. For example, the phrase describing the occurred event may be thesame as the message which has caused the occurrence of the event but isnot limited thereto. For example, the device 1000 may generate thephrase describing the occurred event by editing the message which hascaused the occurrence of the event. The phrase describing the occurredevent may include brief content including only basic informationincluded in the message. The basic information may be, for example, akeyword indicating the time and/or place in the message which has causedthe occurrence of the event but is not limited thereto.

In addition, the device 1000 may generate the phrase describing theoccurred event with reference to a manner of speaking (i.e., speechpattern) of the user of the other device that transmitted the messagewhich has caused the occurrence of the event. The manner of speaking orthe speech pattern of the user may refer to a dialect, an accent, alinguistic idiosyncrasy, a characteristic, and/or vocabulary, commonlyassociated with the user. In this case, the way of speaking of the userof the other device may be determined by analyzing messages transmittedin the past by the user of the other device. In addition, the way ofspeaking of the user of the other device may be stored in a memory inthe device 1000 and matched with the identity of the user of the otherdevice.

In operation S520, the device 1000 may display a comment message relatedto the occurred event. The comment message may be a message indicating acomment related to an event related to a message in a primary chatwindow. For example, the comment message may include informationindicating matters to which the user refers to input a response messagerelated to the occurred event. For example, the device 1000 may display,in the secondary chat window 3000, a comment message includinginformation indicating that the occurred event overlaps with anotherscheduled event of the user. In this case, for example, the device 1000may extract a user schedule registered in the device 1000 or apredetermined web service and determine whether the occurred eventconflicts with the user's schedule. In addition, the device 1000 maygenerate a comment message indicating that the occurred event overlapswith a pre-registered schedule of the user. In addition, the commentmessage may include content inducing a response of the user. Forexample, the device 1000 may generate a comment message for informingthat the prescheduled event of the user is an important event or acomment message for informing that the user's schedule requires anadjustment, but the disclosure is not limited thereto.

In addition, the device 1000 may cause messages related to apredetermined event to be blocked. When a message causing the occurrenceof an event set to be blocked is received, the device 1000 may display,in the secondary chat window 3000, a comment message indicating that themessage related to the occurred event has been blocked. In addition, thecomment message indicating that the message has been blocked may includean identification value of another user who has transmitted the messagecausing the occurrence of the event set to be blocked. Alternatively,when a message causing the occurrence of an event set to be blocked isreceived, the device 1000 may ignore the received message and may notdisplay information regarding the received message in the secondary chatwindow 3000.

In operation S540, the device 1000 may display search information aboutthe occurred event. The device 1000 may search for information relatedto the occurred event and display retrieved search information in thesecondary chat window 3000. For example, the device 1000 may display theretrieved search information in the secondary chat window 3000 ordisplay link information for accessing the retrieved search informationin the secondary chat window 3000. In addition, the device 1000 may editthe retrieved search information and display the edited information inthe secondary chat window 3000.

In operation S560, the device 1000 may display a recommended responsemessage related to the occurred event. The recommended response messagemay be a message including a response recommended to the user as aresponse of the user, which is related to the occurred event. Inaddition, for example, the device 1000 may analyze the occurred eventand determine a recommended response related to the occurred event inconsideration of a schedule of the user, a status of the device 1000, astatus of the user, and the like. Information indicating the status ofthe device 1000 and the status of the user may be acquired from, forexample, a sensor included in the device 1000 or communicating with thedevice 1000, a server, and/or another device. The device 1000 maydisplay the recommended response message related to the occurred eventin the secondary chat window 3000.

FIGS. 6A and 6B illustrate the device 1000 providing a comment messagebased on a user schedule, according to some exemplary embodiments.

Referring to FIG. 6A, the user of the device 1000 may send and receivemessages in a primary chat window 2060 with at least one other user.When the user of the device 1000 sends a message 600 to other users inthe chat window 2060, the device 1000 may determine a category ofmessages in the chat window 2060 by analyzing the messages. In addition,when a message 610 including a specific keyword corresponding to thedetermined category is received, the device 1000 may determine whether aspecific event related to the determined category has occurred byanalyzing the meaning of the message 610. For example, the device 1000may assign a category, “appointment”, by analyzing the messages in thechat window 2060. In addition, the device 1000 may identify the words“evening” and “8 o'clock” included in the message 610 and determine thata message proposing a meet-up has been received, by analyzing themeaning of the message 610.

As shown in FIG. 6B, when the device 1000 determines that the presetevent related to the determined category has occurred, as a result ofanalyzing the meaning of the message 610, the device 1000 may generate asecondary chat window 3060. A message 620, which is identical to themessage 610 from another user in the primary chat window 2060, may bedisplayed in the newly generated secondary chat window 3060. The device1000 may generate a comment message 630 related to the occurred event byusing schedule information about the user and display the generatedcomment message 630 in the secondary chat window 3060. For example, thedevice 1000 may determine whether a schedule in the message 610 receivedin the chat window 2060 overlaps with a schedule included in theschedule information about the user, by using the schedule informationabout the user. In addition, the device 1000 may generate the commentmessage 630 for informing that the schedule requested in the message 610overlaps with the schedule of the user and display the generated commentmessage 630 in the secondary chat window 3060. The comment message 630may include a phrase informing about the conflict of schedule of theuser and a phrase inducing a response from the user. For example, thecomment message 630 may include the phrase, “You have a dinnerappointment this evening. Do you want to send a decline response toJohn?” in the secondary chat window 3060.

In addition, the device 1000 may receive a user input for inputting aresponse message 640 in response to the comment message 630 in thesecondary chat window 3060. In addition, the device 1000 may input, intothe chat window 2060, the response message 640 input in the secondarychat window 3060 so that other users view the response message 640 ofthe user through the chat window 2060.

FIG. 7 illustrates the device 1000 displaying, in a secondary chatwindow 3070, a comment message 700 for informing that a blocked messagehas been received, according to some exemplary embodiments.

Referring to FIG. 7, when a message from another user set by the user tobe blocked is received through a primary chat window, the device 1000may generate the secondary chat window 3070 and display, in thesecondary chat window 3070, the comment message 700 for informing that ablocked message has been received. The comment message 700 may includecontent for informing that blocked content has been received and anidentification value of the other user who has transmitted the blockedmessage. For example, when the user of the device 1000 has set messagesfrom “John” to be blocked, the device 1000 may display the commentmessage 700, “A message from John, which you have set to be blocked, hasbeen received. Do you want to see it later?” in the secondary chatwindow 3070. In addition, the device 1000 may receive a response message710 from the user, which indicates blocking of the message. For example,the device 1000 may receive the response message 710, “Later”.

According to an aspect of an exemplary embodiment, when receiving theresponse message 710 indicating blocking of a message is received, thedevice 1000 may block the received message. The device 1000 may storethe blocked message. For example, the blocked message may be stored in aseparate message folder such as “blocked message folder”. When theblocked message is stored, the device may display, in the secondary chatwindow 3070, a message such as “The blocked message has been stored”.

According to another exemplary embodiment, the user may input, in asecondary chat window, a message to be transmitted to another user. Forexample, the user may input, in the secondary chat window, a messagesuch as, “Tell John ‘you are selfish.’” The device 1000 may analyze amessage input by the user. For example, the device 1000 may determinethat information which may cause displeasure of another user is includedin message content input by the user, by using a semantic analysismethod, but the present exemplary embodiment is not limited thereto.When a message including information which may upset the recipient isinput by the user, the device 1000 may display, in the secondary chatwindow, a message proposing to the user to not transmit the message.According to an exemplary embodiment, when the user inputs, in responseto the comment message, a response message for canceling thetransmission of the message, the device 1000 may cancel the transmissionof the message input by the user. The device 1000 may store, in aseparate message folder, the canceled message. When the canceled messageis stored, the device 1000 may display, in the secondary chat window, amessage such as “the canceled message has been stored”.

FIGS. 8A and 8B illustrate the device 1000 displaying, in a secondarychat window 3080, search information about an occurred event, accordingto some exemplary embodiments.

As shown in FIG. 8A, the device 1000 may receive, through a primary chatwindow 2080, a message 810 that includes a specific keyword from anotheruser. The device 1000 may analyze the meaning of the message 810including the keyword and determine whether an event of searching forinformation related to the keyword has occurred. As a result ofanalyzing the meaning of the message 810, when a search for searchinformation related to the occurred event is necessary, the device 1000may search for the search information related to the occurred event byusing the keyword in the message 810. For example, the device 1000 maydetermine that today's weather forecast is needed based on a message,“They say it will rain today . . . . Did you take an umbrella with you?”including the keyword “rain.”

As shown in FIG. 8B, the device 1000 may display retrieved searchinformation in a secondary chat window 3080. The device 1000 maydisplay, in the secondary chat window 3080, a message 830 including theretrieved search information together with a summary message 820 relatedto messages which the user has not confirmed from among messages in thechat window 2080. The device 1000 may generate the message 830 byediting the retrieved search information and display the generatedmessage 830 in the secondary chat window 3080.

FIG. 9 is a flowchart of a method of providing, to another user througha chat window, a response message input from a user through thesecondary chat window 3000, according to some exemplary embodiments.

In operation S900, the device 1000 may receive a first response input ofthe user who responds to the occurrence of an event and display thereceived first response input in the secondary chat window 3000. Thedevice 1000 may display a message related to the occurred event in thesecondary chat window 3000 and receive the first response input of theuser who inputs a response to the displayed message. The first responseinput of the user may be a simple response including at least one word.For example, the first response input of the user may not be a completesentence and may include only a few keywords related to content whichthe user desires to respond to. The first response input of the user maybe a text input and/or a speech input but is not limited thereto.

Alternatively, when a plurality of events occur, and a plurality ofmessages related to the plurality of events are displayed in thesecondary chat window 3000, the user may input first response inputsrespectively corresponding to the plurality of events.

In operation S920, the device 1000 may generate a recommended responsemessage based on the first response input and display the generatedrecommended response message in the secondary chat window 3000. Thedevice 1000 may generate the recommended response message based oncontent of the occurred event and words included in the first responseinput. For example, the device 1000 may generate a response related tothe occurred event in a form of a complete sentence by using the wordsincluded in the first response input.

Alternatively, when a plurality of events occur, and a plurality offirst response inputs respectively corresponding to the plurality ofevents are input, the device 1000 may generate a plurality ofrecommended response messages respectively corresponding to theplurality of events. Alternatively, when the user inputs first responsesto some of the plurality of events, the device 1000 may generaterecommended response messages related to the events respectivelycorresponding to the input first response inputs, based on the inputfirst response inputs. Alternatively, when the user inputs responses tosome of the plurality of events, the device 1000 may generaterecommended response messages related to events for which first responseinputs of the user have not been input, in consideration of the inputfirst response inputs of the user.

In addition, the device 1000 may generate the recommended responsemessage in consideration of a phrase frequently used by the user and arelationship between the user and the other user but is not limitedthereto. For example, the device 1000 may store and manage informationregarding a history of messages transmitted and received by the user toand from the other user through a chat application and content shared bythe user with the other user, and determine the phrase frequently usedby the user and the relationship between the user and the other userbased on the stored information.

In operation S940, the device 1000 may receive a second response inputof the user in response to the recommended response message and displaythe received second response input in the secondary chat window 3000.The user may input the second response input related to whether to agreeto transmit the recommended response message recommended by the device1000 to the other user. Alternatively, the user may input the secondresponse input for editing the recommended response message recommendedby the device 1000. Alternatively, the user may input the secondresponse input for designating recipient of the recommended responsemessage so that it is determined to whom the recommended responsemessage recommended by the device 1000 is transmitted. Alternatively,the device 1000 may receive the second response input indicating whichportion of the recommended response message is to be transmitted toanother user. Alternatively, the device 1000 may receive the secondresponse input for requesting the device to provide another recommendedresponse message. In this case, the device 1000 may generate anotherrecommended response message and display the generated other recommendedresponse message in the secondary chat window 3000. The second responseinput of the user may be a text input and/or a speech input but is notlimited thereto.

In operation S960, the device 1000 may generate or determine a finalresponse message to be provided to the other user, based on the secondresponse input, and display the generated or determined final responsemessage in the secondary chat window 3000.

In operation S980, the device 1000 may provide the final responsemessage to the other user through a chat window corresponding to thefinal response message.

For example, when a plurality of events occur in a plurality of chatwindows, respectively, and when a plurality of final response messagesrespectively corresponding to the plurality of events are determined,the device 1000 may input the plurality of final response messages inthe plurality of chat windows corresponding to the plurality of finalresponse messages, respectively.

In addition, for example, when the user communicates with a plurality ofother users in a chat window, and the user inputs the second responseinput such that the second response input is transmitted to some of theplurality of other users, the device 1000 may provide the final responsemessage to only some of the plurality of other users. In this case, thedevice 1000 may input and display the final response message in the chatwindow and display, together with the final response message, anidentification value indicating to whom of the other users in the chatwindow the input final response message is provided.

FIGS. 10A-10B, 11, and 12A-12B illustrate the device 1000 providing,through the secondary chat window 3000, a recommended response messageto the user and providing a final response message to another userthrough a chat window.

FIGS. 10A and 10B illustrate the device 1000 receiving messages fromother users through a plurality of chat windows 2110 and 2120, accordingto some exemplary embodiments. As shown in FIGS. 10A and 10B, the device1000 may receive an exemplary message 1010, “Would you have dinnertogether?” from a user named John through the chat window 2110. Inaddition, the device 1000 may receive a message 1020, “Are you going tohave dinner at home?” from Mother through the chat window 2120. Themessages 1010 and 1020 may trigger events belonging to the samecategory.

FIG. 11 illustrates the device 1000 providing, to the user through asecondary chat window 3110, a recommended response message related tothe events occurred in FIG. 10, according to some exemplary embodiments.

As shown in FIG. 11, the device 1000 may display, in the secondary chatwindow 3110, a message 1110 obtained by summarizing the messages 1010and 1020 received in FIGS. 10A and 10B. The message 1110 may includephrases indicating the occurred events and may be represented by one ormore sentences generated or modified by the device 1000. For example,the message 1110 may include a sentence, “Mother asked if you areplanning to have dinner at home, and John asked to have dinnertogether.” However, the message 1110 is not limited thereto and mayinclude guidance information for informing that events belonging to thesame category conflict with each other via the plurality of chat windows2110 and 2120.

In addition, the device 1000 may receive a first response input 1120 forresponding only to John between John and mother. For example, the device1000 may receive the first response input 1120 from the user, “DinnerJohn”, in response to the message 1110, indicating that the user wishesto have dinner with John.

In addition, the device 1000 may generate a recommended response message1130 based on the first response input 1120 and display the generatedrecommended response message 1130 in the secondary chat window 3110. Forexample, the device 1000 may generate a response, “Let's have dinnertogether”, to be provided to John based on the first response input1120, and generate a response, “I will have dinner with John,” to beprovided to Mother, who has caused the occurrence of the event for whichno response has been input, in consideration of the first response input1120. In addition, the device 1000 may display the recommended responsemessage 1130, “To John: Let's have dinner together; To mother: I willhave dinner with John; Do you want to send these messages to John andmother?”, in the secondary chat window 3110. However, the presentexemplary embodiment is not limited thereto, and a recommended responsemessage may be generated and displayed in various forms.

In addition, the device 1000 may receive a second response input 1140 ofthe user in response to the recommended response message 1130 anddisplay the received second response input 1140 in the secondary chatwindow 3110. The device 1000 may receive, from the user, the secondresponse input 1140 indicating that the user agrees to provide therecommended response message 1130 to the other users. In addition, thedevice 1000 may determine a final response message according to thesecond response input 1140 of the user.

FIGS. 12A and 12B illustrate displaying, in chat windows 2110 and 2120,final response messages determined according to the recommended responsemessage 1130 of FIG. 11, according to some exemplary embodiments.

As shown in FIGS. 12A and 12B, the device 1000 may display a finalresponse message 1211, “Let's have dinner together,” in the chat window2110 and display a final response message 1221, “I will have dinner withJohn,” in the chat window 2120.

According to another exemplary embodiment, the user may input, through asecondary chat window, a message to be transmitted to a plurality ofother users. For example, the user may input a message, “Tell group Aand group B ‘I am going to travel this weekend,’” in the secondary chatwindow. The device 1000 may modify the message input in the secondarychat window by the user or generate a new message, based on relationshipinformation between the user and each of the plurality of other users.For example, the device 1000 may generate recommended response messagesin consideration of relationships between the user and the groups A andB, such as “Do you want to send a message, ‘I am going to travel thisweekend. Please email only if it is an emergency,” to group A?” and “Doyou want to send a message, “I am going to travel this weekend. I willnot to be able to join the weekend meeting,” to group B?”, and displaythe generated recommended response messages in the secondary chatwindow. The user may input a response message for approving a portion orall of the recommended response messages, and the device 1000 maytransmit messages to the plurality of other users based on the responsemessage of the user.

FIG. 13 is a flowchart of a method of outputting, as a speech, a summarymessage of an occurred event, according to some exemplary embodiments.

In operation S1301, the device 1000 may determine whether an event hasoccurred from a plurality of messages included in at least one chatwindow.

In operation S1321, the device 1000 may generate a summary message ofthe occurred event.

In operation S1341, the device 1000 may identify another user related tothe occurred event.

In operation S1361, the device 1000 may modify the summary messageaccording to a characteristic of the identified other user. For example,the device 1000 may modify the summary message based on informationregarding a phrase frequently used by the identified user and/orrelationship information between the user and the other user, but thedisclosure is not limited thereto. For example, the device 1000 mayadjust a tone of the generated summary message according to a speechpattern of the other user. In addition, the device 1000 may cumulativelycollect information to be used as a basis for modifying the summarymessage, from messages of other users in a chat window, but is notlimited thereto.

In operation S1381, the device 1000 may output the modified summarymessage as a speech of the other user. In this case, speech informationabout the speech of the other user may be stored in advance, and thedevice 1000 may output the summary message as a synthesized speech ofthe other user by using the stored speech information.

FIG. 14 is a flowchart of a method of outputting, as a speech, a summarymessage of an occurred event according to the existence of a speechsegment, according to some exemplary embodiments.

In operation S1401, the device 1000 may determine whether a speechsegment of another user exists in a storage. The device 1000 maycumulatively store, for example, a call history of the other user andspeech data received from the other user, and the device 1000 maydetermine whether a speech segment of the other user exists.

If it is determined as a result of the determination in operation S1401that a speech segment of the other user exists, the device 1000 mayacquire a speech characteristic of the other user by using the speechsegment of the other user in operation S1411. For example, the device1000 may collect speech segments of the other user, then acquire a textcorresponding to the collected speech segments by using a speechrecognition method, and generate a speech learning model of the otheruser by using the acquired text. In addition, the device 1000 mayacquire a speech characteristic of the other user by using the generatedspeech learning model of the other user.

In operation S1421, the device 1000 may output, as a speech of the otheruser, a summary message of a message received from the other user byapplying the speech characteristic of the other user.

If it is determined as a result of the determination in operation S1401that no speech segment of the other user exists, the device 1000 maypredict the speech characteristic of the other user in operation S1431.For example, the device 1000 may predict the speech characteristic ofthe other user by using attribute information about the other user andmessages received from the other user but is not limited thereto. Theattribute information about the other user may include a gender and anage of the other user but is not limited thereto. The speechcharacteristic of the other user thus predicted may be an approximationof the speech of the other user based on the attribute information andthe messages.

In operation S1441, the device 1000 may output, as a speech, the summarymessage by applying the predicted speech characteristic of the otheruser. The speech may be a synthesized speech utterance.

According to another exemplary embodiment, a speech characteristic for asummary message to be output as a speech may be determined based onstate information about the device 1000. The state information about thedevice 1000 may include time and place information, motion informationabout the device 1000, and the like. The device 1000 may acquire thestate information about the device 1000 through a microphone, aphotosensor, a speed sensor, and the like. For example, when the useruses the device 1000 during work at an office in the afternoon, thedevice 1000 may output summary information briefly and quickly byapplying a speech characteristic of a broadcast announcer so as not todisturb the work, based on acquired state information about the device1000. However, the present exemplary embodiment is not limited thereto.

FIG. 15 illustrates the device 1000 providing a message through thesecondary chat window 3000, according to some exemplary embodiments.

In operation S1501, the device 1000 may set a level of at least oneother user. The device 1000 may receive a user input for setting levelsof other users before and after receiving messages from the other usersthrough a chat window. When the user does not set levels of the otherusers, the levels of the other users may be set to a default value. Inaddition, the device 1000 may display identification values indicatingthe levels of the other users in the chat window and the secondary chatwindow 3000. The level may indicate priority assigned to each of theusers.

In operation S1511, the device 1000 may edit a message to be provided tothe other user through the secondary chat window 3000, based on the setlevel. For example, the user may set the level of the other user as animportant level (i.e., high priority), and the device 1000 may display,in the secondary chat window 3000, only a summary message related to amessage received from the other user set to the important level. Inaddition, the device 1000 may provide a message input by the userthrough the secondary chat window 3000 only to the other user set to theimportant level.

For example, the user may set the level of the other user as a blockinglevel (i.e., low priority), and the device 1000 may not generate asummary message of a message received from the other user set to theblocking level. In addition, when a summary message of a messagereceived from the other user set to the blocking level is alreadydisplayed in the secondary chat window 3000, the displayed summarymessage may be removed or hidden.

In operation S1521, the device 1000 may group a plurality of other usersand display messages received from the grouped other users as a singleuser group. The device 1000 may display, in the secondary chat window3000, the messages received from the grouped other users together withan identification value indicating the user group. The device 1000 maygenerate a plurality of user groups based on at least one criterion.Other users may belong to the plurality of user groups.

An identification value of a user group may include an image and/or atext. In addition, the identification value of the user group may be anidentification value randomly generated by the device 1000, anidentification value generated based on identification values of aplurality of other users belonging to the user group, or anidentification value input by the user but is not limited thereto. Theidentification value may be unique to the user group that the value isassigned to

In operation S1531, the device 1000 may display a summary message foreach of the other users or user groups. The device 1000 may individuallydisplay a summary message of another user and a summary message of auser group in the secondary chat window 3000. The device 1000 maydisplay both the summary message of the other user and the summarymessage of the user group in one secondary chat window. However, thepresent exemplary embodiment is not limited thereto, and the device 1000may display the summary message of the other user and the summarymessage of the user group in different secondary chat windows,respectively.

In operation S1541, the device 1000 may remove multimedia contentincluded in a message in a chat window from the summary message. Thedevice 1000 may not insert the multimedia content included in themessage in the chat window into the summary message. The multimediacontent may include speech content, image content, and video content butis not limited thereto. In addition, the device 1000 may be configuredto not display the multimedia content included in the chat window in thesecondary chat window 3000. The device 1000 may be configured to notdisplay multimedia content, according to various criteria based on auser input.

In operation S1551, the device 1000 may display, in a secondary chatwindow, an icon for displaying the multimedia content which has not beendisplayed. In other words, the icon may be a placeholder for somemultimedia content that is currently hidden from the view. When thedevice 1000 receives a user input for selecting the icon, the device1000 may display the multimedia content corresponding to the icon in thesecondary chat window 3000. Alternatively, the device 1000 may displaythe multimedia content corresponding to the icon in a separate window.

FIG. 16 illustrates a GUI 1601 for setting levels of other users,according to some exemplary embodiments.

Referring to FIG. 16, the GUI 1601 for setting levels of other users mayinclude a list of the other users and graphical objects for selectingthe levels of the other users. For example, the device 1000 may receivea user input for assigning the important level to, for example, usersJohn and Mary. In addition, the device 1000 may receive a user input forassigning the blocking level to, for example, a user designated as“Friend 1.”

FIGS. 17A and 17B illustrate the device 1000 displaying summary messagesof other users and a summary message of a user group in a secondary chatwindow 3170, according to some exemplary embodiments.

Referring to FIG. 17A, messages received from a plurality of other usersset to different levels in FIG. 16 may be displayed in a chat window2170.

Referring to FIG. 17B, the device 1000 may display, in the secondarychat window 3170, summary messages of John and Mary, who are assignedthe important level. The device 1000 may display, in the chat window2170 and the secondary chat window 3170, star-shaped icons indicatingthe important level. The device 1000 may display, in the secondary chatwindow 3170, messages of John and Mary, who are assigned the importantlevel, without modifying the messages.

In addition, the device 1000 may not display, in the secondary chatwindow 3170, a summary message for Friend 1, who is assigned theblocking level.

In addition, the device 1000 may group a plurality of other users,“Friend 2” and “Friend 3,” who have not been assigned the importantlevel or the blocking level and display the grouped other users as asingle user group 1701. The device 1000 may display a text,“participants”, and an icon including images of the participants in theprimary chat window 2170 to identify the user group 1701. The device1000 may briefly summarize contents of messages received from “Friend 2”and “Friend 3” belonging to the user group 1701 in the primary chatwindow 2170 and display a summary message, “Join”, of changed content inthe secondary chat window 3170.

FIGS. 18A through 18C illustrate the device 1000 displaying, in asecondary chat window 3180 b, multimedia content included in a chatwindow 2180, according to some exemplary embodiments.

Referring to FIG. 18A, an image 1800 transmitted from the user John maybe displayed in the primary chat window 2180.

Referring to FIG. 18B, the device 1000 may not display, in a secondarychat window 3180 a, the image 1800 included in the chat window 2180 ofFIG. 18A. In addition, the device 1000 may display, in the secondarychat window 3180 a, an icon 1810 as a replacement or placeholder fordisplaying the image 1800.

Referring to FIG. 18C, when the user selects the icon 1810 in thesecondary chat window 3180 a, the device 1000 may generate a separatesecondary chat window 3180 b other than the secondary chat window 3180 aand display the image 1800 in the generated secondary chat window 3180b.

FIGS. 19A-19B and 20A-20B illustrate the device 1000 displaying messagesof other users by using a primary chat window and secondary chat windows3190 a and 3190 b, according to some exemplary embodiments.

As shown in FIG. 19A, the device 1000 may display, in the secondary chatwindow 3190 a, messages related to a subject, “sports,” from among aplurality of messages in at least one primary chat window. For example,the device 1000 may display, in the secondary chat window 3190 a, amessage, “See you in the gym at 8 o'clock today,” from John; a message,“Please, pay a basketball membership fee”, received from Bob; and amessage, “Let's play soccer, too”, received from “Rick.” In addition,the device 1000 may receive a user input 1 for selecting anidentification value of the other user John, which is displayed in thesecondary chat window 3190 a.

In FIG. 19B, the device 1000 may display the secondary chat window 3190b for displaying messages received from John on a screen in response tothe user input 1, which corresponds to the user John. The device 1000may display, in the secondary chat window 3190 b, a plurality ofmessages received from John from among the plurality of messages in theat least one primary chat window. The messages displayed in thesecondary chat window 3190 b may be displayed with identification values(e.g., “basketball team” and “private message”) of chat windows throughwhich the messages have been received. For example, an identificationvalue may be a tag, a label, a classifier, or a category. In addition,the device may receive a user input 2 for selecting “basketball team”displayed in the secondary chat window 3190 b.

As shown in FIG. 20A, the device 1000 may display a “basketball team”chat window 2190 on the screen of the device 1000 in response to theuser input 2. The device 1000 may display only messages received fromJohn from among messages included in the “basketball team” chat window2190. In addition, the device 1000 may receive a user input 3 fordisplaying messages of other users, which are included in the“basketball team” chat window 2190.

Referring to FIG. 20B, the device 1000 may display the messages of theother users including John, which are included in the “basketball team”chat window 2190, in response to the user input 3. For example, thedevice 1000 may display a message received from a user named Steve andthe messages received from John in the “basketball team” chat window2190. In addition, the device 1000 may receive a user input 4 for hidingmessages of other users except for John, which are included in the“basketball team” chat window 2190. The device 1000 may hide themessages of the other users who are included in the “basketball team”chat window 2190 except for John, in response to the user input 4.

FIG. 21 is a flowchart of a method of classifying and displaying, in thesecondary chat window 3000, messages included in a primary chat windowfor each category, according to some exemplary embodiments.

In operation S2100, the device may acquire a plurality of messagesincluded in a plurality of chat windows.

In operation S2120, the device may receive a user input for selecting aspecific category. The device 1000 may display a category list toreceive a user input for selecting a category for the secondary chatwindow 3000 before generating the secondary chat window 3000. Inaddition, the device 1000 may receive a user input for selecting thespecific category from the displayed category list. Categories includedin the category list may be chosen by the user but are not limitedthereto, and may be set by the device 1000 as a default.

In operation S2140, the device may select messages corresponding to theselected category from among the plurality of messages. The device 1000may determine categories to which the plurality of messages belong byanalyzing the meaning of the plurality of messages. In addition, thedevice 1000 may select the messages corresponding to the categoryselected in operation S2120 from among the plurality of messages, basedon the determined categories of the plurality of messages.

In operation S2160, the device 1000 may display the selected messages inthe secondary chat window 3000. The device 1000 may generate thesecondary chat window 3000 in which an identification value of theselected category is displayed and display the selected messages in thegenerated secondary chat window 3000. The device 1000 may classify anddisplay the messages of the selected category for each of other users.

In addition, the device 1000 may display the messages in the secondarychat window 3000 in a preset order. For example, the device 1000 mayfirst display a message including an identification value of the usermore than the other messages or a message including a preset keywordfrom among the messages to be displayed in the secondary chat window3000. However, the order of the messages displayed in the secondary chatwindow 3000 is not limited thereto.

In addition, the device 1000 may generate the secondary chat window 3000for each category and display secondary chat windows 3000 according topreset priorities. For example, the device 1000 may display a pluralityof secondary chat windows 3000 in a predetermined order based on thenumber of messages included in a category or the number of times theidentification value of the user is included in messages included in acategory, for each category. However, the order of displaying thesecondary chat windows 3000 is not limited thereto.

FIGS. 22A through 22C illustrate classifying messages included in aprimary chat window for each category and generating a secondary chatwindow 3200 for each category, according to some exemplary embodiments.

In FIG. 22A, the device 1000 may receive messages through each of aplurality of primary chat windows and display a chat window list on thescreen of the device 1000.

In FIG. 22B, the device 1000 may classify, for each category, aplurality of messages received through the plurality of primary chatwindows and generate a secondary chat window for each category. Inaddition, the device 1000 may display a list of secondary chat windowson the screen of the device 1000. The list of the secondary chat windowsmay include a category name (e.g., “sports” or “food”) and names ofother users who transmitted messages included in the correspondingcategory, as an identification value of each category. In addition, thedevice 1000 may receive a user input 4 for selecting “sports” from thelist of the secondary chat windows.

As shown in FIG. 22C, the device 1000 may select a plurality of messagesincluded in a category, “sports,” in response to the user input 4 andthen display the selected plurality of messages in the secondary chatwindow 3200.

FIGS. 23A through 23C illustrate the device 1000 displaying a secondarychat window 3230 when a preset event occurs while performing apredetermined operation, according to some exemplary embodiments.

Referring to FIG. 23A, when a preset event occurs in a “calling state”,the device 1000 may generate a phrase informing about the occurrence ofan event and display the generated phrase on a display. In addition, thedevice 1000 may provide, to the user, a menu for selecting a method ofprocessing a message related to the occurred event together with thegenerated phrase. For example, the device 1000 may display a menuincluding “ignore a message”, “hang up and then check a message”, and“suspend the call and check a message” on the screen of the device 1000.In addition, for example, the device 1000 may receive a user input 5 forselecting “suspend the call and check a message.”

In FIG. 23B, the device 1000 may change the “calling state” to the “callsuspended state” in response to the user input 5. In addition, thedevice 1000 may display a phrase indicating that the event which hasoccurred during a call is an event related to “a message in which theuser is mentioned.”. In addition, the device 1000 may receive a userinput 6 for selecting the displayed phrase.

According to an exemplary embodiment, when a plurality of events occur,the device 1000 may display a phrase indicating each of the plurality ofevents. The device 1000 may display events having higher priority ordisplay the events in the order of occurrence.

In FIG. 23C, the device 1000 may display the secondary chat window 3230for displaying a message related to the occurred event on the screen ofthe device 1000 in response to the user input 6.

According to an exemplary embodiment, when a plurality of events occur,the device 1000 may receive a user input for selecting any one of thedisplayed plurality of events. The device 1000 may display, on thescreen of the device 1000, a secondary chat window for displaying amessage related to the event corresponding to the user input.

FIGS. 24 and 25 are block diagrams of configurations of the device 1000according to some exemplary embodiments.

As shown in FIG. 24, the device 1000 according to some exemplaryembodiments may include a user input interface 1100, an output interface1200, a controller 1300, and a communication interface 1500. However,not all of the components shown in FIG. 24 are mandatory components ofthe device 1000. The device 1000 may be implemented with more or fewercomponents than the components shown in FIG. 24.

For example, as shown in FIG. 25, the device 1000 according to someexemplary embodiments may further include a sensor 1400, an audio/video(A/V) input interface 1600, and a memory 1700 associated with the userinput interface 1100, the output interface 1200, the controller 1300,and the communication interface 1500.

The user input interface 1100 may include various means through whichthe user input data for controlling the device 1000. For example, theuser input interface 1100 may include a keypad, a dome switch, a touchpad (e.g., a capacitive overlay touch pad, a resistive overlay touchpad, an infrared (IR) beam touch pad, a surface acoustic wave touch pad,an integral strain gauge touch pad, a piezoelectric touch pad, or thelike), a jog wheel, a jog switch, and the like but is not limitedthereto.

The user input interface 1100 may receive a user input through theprimary chat window and/or the secondary chat window 3000. For example,the user input interface 1100 may receive a user input for inputting amessage, through the secondary chat window 3000.

The output interface 1200 may output an audio signal, a video signal, ora vibration signal, and may include a display 1210, an acoustic outputinterface 1220, and a vibration motor 1230.

The display 1210 may display information processed by the device 1000.For example, the display 1210 may display a primary chat window and thesecondary chat window 3000. In addition, the display 1210 may displayinformation regarding messages included in the primary chat window andthe secondary chat window 3000.

The acoustic output interface 1220 may output audio content receivedthrough the communication interface 1500 or stored in the memory 1700.In addition, the acoustic output interface 1220 may output an acousticsignal related to a function (e.g., a call signal reception sound, amessage reception sound, or an alarm sound) performed by the device1000. The acoustic output interface 1220 may include a speaker, abuzzer, and the like.

The vibration motor 1230 may output a vibration signal. For example, thevibration motor 1230 may output a vibration signal corresponding to anoutput of audio data or video data (e.g., a call signal reception soundor a message reception sound). In addition, the vibration motor 1230 mayoutput a vibration signal when a touch is input through a touch screen.

The controller 1300 may commonly control a general operation of thedevice 1000. For example, the controller 1300 may generally control theuser input interface 1100, the output interface 1200, the sensor 1400,the communication interface 1500, the A/V input interface 1600, and thelike by executing programs stored in the memory 770.

The controller 1300 may perform the operations of the device 1000, whichare disclosed with respect to FIGS. 1 through 23C, by executing theprogram instructions stored in the memory 770.

In detail, the controller 1300 may transmit and receive messages to andfrom other devices through at least one chat window provided by a chatapplication installed in the device 1000, analyze the messages in thechat window, and provide information regarding the analyzed messages tothe user of the device 1000 by using the secondary chat window 3000.

The controller 1300 may display the chat window list 2000 on the screenof the device 1000, wherein the chat window list 2000 may include anidentification value of at least one chat window.

The controller 1300 may display, in the secondary chat window 3000,information regarding messages in the at least one chat window includedin the chat window list 2000. The controller 1300 may analyze themessages in the at least one chat window, generate guidance informationabout the messages in the at least one chat window, and display thegenerated guidance information in the secondary chat window 3000. Thecontroller 1300 may generate the secondary chat window 3000 fordisplaying the guidance information and display the guidance informationin the secondary chat window 3000 in an interactive form. In addition,the controller 1300 may receive a user input through the secondary chatwindow 3000 and generate a recommended response message based on thereceived user input.

The controller 1300 may acquire a plurality of messages included in theat least one primary chat window. The controller 1300 may transmit andreceive messages to and from other devices through a chat window andmonitor the messages transmitted and received through the chat window.The controller 1300 may identify whether the acquired messages have beenread by the user of the device 1000. In addition, the controller 1300may acquire, from a chat window, messages from other devices for apreset time duration.

In addition, the controller 1300 may determine that a preset event hasoccurred, based on the acquired plurality of messages. The controller1300 may determine that the preset event has occurred, based on amessage received from another device but not yet read by the user of thedevice 1000 from among messages in a chat window. The controller 1300may change the preset event by receiving a user input for changing anevent. In addition, the controller 1300 may generate the secondary chatwindow 3000 for informing the user about the occurred event. Thecontroller 1300 may set the user of the device 1000 and the device 1000itself as participants in the chat room of the secondary chat window3000. The controller 1300 may match (i.e., associate) a plurality ofprimary chat windows with the secondary chat window 3000 and generatethe secondary chat window 3000 to inform the user of informationregarding events respectively occurring in the plurality of primary chatwindows.

When the preset event has occurred, the controller 1300 mayautomatically generate the secondary chat window 3000 but is not limitedthereto. When the preset event has occurred, the controller 1300 maydisplay a GUI for asking the user if the user wishes to receive guidanceinformation through the secondary chat window 3000, and generate thesecondary chat window 3000 if a user input for receiving guidanceinformation is input through the GUI.

In addition, the controller 1300 may display guidance information aboutthe occurred event in the secondary chat window 3000.

The controller 1300 may set events for each category. The controller1300 may select a predetermined category by receiving a user input andset a predetermined event related to the selected category.

In addition, the controller 1300 may identify a keyword included in atleast one message. The controller 1300 may identify at least one keywordfrom messages acquired from at least one chat window. The controller1300 may identify a keyword from a message according to an event set inthe device 1000.

In addition, the controller 1300 may analyze the meaning of a messageincluding a keyword. The controller 1300 may analyze the meaning of amessage including a keyword related to an event from among messages in achat window. In addition, the controller 1300 may analyze the meaning ofa few messages displayed before and after a message including thekeyword related to an event from among messages in a chat window.

In addition, the controller 1300 may determine the occurrence of apreset event. The controller 1300 may determine whether the preset eventhas occurred in a primary chat window, based on the meaning of ananalyzed message. For example, the controller 1300 may determine whichcategory of events a message is related to, based on the meaning of themessage and determine which event among the events in the determinedcategory has occurred associated with the message.

The controller 1300 may display a summary message of an occurred event.The controller 1300 may generate a summary message of an occurred eventand display the generated summary message in the secondary chat window3000. The controller 1300 may generate a summary message of an occurredevent by analyzing the meaning of at least one message which has causedthe occurrence of the event.

In addition, the controller 1300 may display a comment message relatedto the occurred event.

In addition, the controller 1300 may display search information aboutthe occurred event. The controller 1300 may search for informationrelated to the occurred event and display retrieved search informationin the secondary chat window 3000. In addition, the controller 1300 mayedit or modify the retrieved search information and display the editedinformation in the secondary chat window 3000.

In addition, the controller 1300 may display a recommended responsemessage related to the occurred event.

The controller 1300 may be implemented with one or more processors(e.g., central processing units (CPUs)) or virtual processors capable ofperforming computations, executing instructions, and controlling othercomponents in the device 1000.

The sensor 1400 may detect a state of the device 1000 or an ambientstate of the device 1000 and transmit the detected information to thecontroller 1300.

The sensor 1400 may include a magnetic sensor 1410, an accelerationsensor 1420, a temperature/humidity sensor 1430, an IR sensor 1440, agyroscope sensor 1450, a location sensor (e.g., global positioningsystem (GPS)) 1460, an atmospheric pressure sensor 1470, a proximitysensor 1480, and/or an RGB (illuminance) sensor 1490, but is not limitedthereto. A function of each sensor may be intuitively inferred by thoseof ordinary skill in the art from a name thereof, and thus a detaileddescription thereof is omitted herein.

The communication interface 1500 may include at least one component forcommunicating between the device 1000 and other devices. For example,the communication interface 1500 may include a short-range wirelesscommunication interface 1510, a mobile communication interface 1520, anda broadcast reception interface 1530.

The short-range wireless communication interface 1510 may include aBluetooth communication interface, a Bluetooth low energy (BLE)communication interface, a near-field communication (NFC) interface, awireless local area network (WLAN or Wi-Fi) communication interface, aZigbee communication interface, an infrared data association (IrDA)communication interface, Wi-Fi Direct (WFD) communication interface, anultra-wideband (UWB) communication interface, an Ant+ communicationinterface, and the like but is not limited thereto.

The mobile communication interface 1520 may transmit and receive awireless signal to and from a base station, an external terminal, and/ora server in a mobile communication network. Herein the wireless signalmay include a voice call signal, a video call signal, or various typesof data according to text/multimedia message transmission and reception.

The broadcast reception interface 1530 may receive a broadcast signaland/or broadcast related information from the outside through abroadcast channel, and the broadcast channel may include a satellitechannel and a terrestrial channel.

The A/V input interface 1600 may be used to input an audio signal or avideo signal and may include a camera 1610, a microphone 1620, and thelike. The camera 1610 may obtain an image frame of a still image, amoving picture, or the like through an image sensor in a video call modeor an image capturing mode. An image captured through the image sensormay be processed by the controller 1300 or a separate image processor.

The image frame processed by the camera 1610 may be stored in the memory1700 or transmitted to an external device through the communicationinterface 1500. Two or more cameras 1610 may be prepared according toconfiguration aspects of the device 1000.

The microphone 1620 may receive an external acoustic signal and convertthe external acoustic signal into electrical voice data. For example,the microphone 1620 may receive an acoustic signal from an externaldevice or a speaker. The microphone 1620 may use various noisecancellation algorithms to cancel noise generated during a process ofreceiving an external acoustic signal.

The memory 1700 may store programs (i.e., software) for processing andcontrol of the controller 1300 and store data input to the device 1000or output from the device 1000.

The memory 1700 may include a flash memory type memory, a hard disk typememory, a multimedia card micro type memory, a card type memory (e.g., asecure digital (SD) or extreme digital (XD) memory), random accessmemory (RAM), static RAM (SRAM), read only memory (ROM), electricallyerasable programmable ROM (EEPROM), PROM, a magnetic memory, a magneticdisc, and/or an optical disc.

The programs or instructions stored in the memory 1700 may be classifiedinto a plurality of modules according to functions thereof, e.g., a userinterface (UI) module 1710, a touch screen module 1720, an alarm module1730, and the like.

The UI module 1710 may provide a specified UI, a specified GUI, or thelike interoperating with the device 1000 for each application. The touchscreen module 1720 may sense a touch gesture of the user on the touchscreen and transmit information regarding the touch gesture to thecontroller 1300. According to some exemplary embodiments, the touchscreen module 1720 may recognize and analyze a touch code. The touchscreen module 1720 may be configured by separate hardware including acontroller.

Some exemplary embodiments may be implemented in a form of a recordingmedium including computer-executable instructions such as a programmodule executed by a computer system. A non-transitory computer-readablemedium may be a medium which may be accessed by a computer system andmay include all types of volatile and nonvolatile media and independentand non-independent media. In addition, the non-transitorycomputer-readable medium may include all types of computer storage mediaand communication media. The computer storage media include all types ofvolatile and nonvolatile and separated and non-separated mediaimplemented by various methods and techniques for storing informationsuch as computer-readable instructions, a data structure, a programmodule, or other data. The communication media typically includecomputer-readable instructions, a data structure, a program module,other data of a modulated signal such as a carrier, other transmissionmechanism, and arbitrary information delivery media.

In addition, in the present specification, an “interface” or a componentdescribed with a suffix “-er(or)” may indicate a hardware component suchas a processor or a circuit and/or a software component executed by ahardware component such as a processor.

The exemplary embodiments described above are only illustrative, and itwill be understood by those of ordinary skill in the art that variouschanges in form and details may be made therein without changing thetechnical spirit and mandatory features of the inventive concept.Therefore, the exemplary embodiments should be understood in theillustrative sense only and not for the purpose of limitation in allaspects. For example, each component described as a single type may becarried out by being distributed, and likewise, components described asa distributed type may also be carried out by being coupled.

It should be understood that exemplary embodiments described hereinshould be considered in a descriptive sense only and not for purposes oflimitation. Descriptions of features or aspects within each exemplaryembodiment should typically be considered as available for other similarfeatures or aspects in other exemplary embodiments.

While exemplary embodiments have been described with reference to thefigures, it will be understood by those of ordinary skill in the artthat various changes in form and details may be made therein withoutdeparting from the spirit and scope as defined by the following claims.

What is claimed is:
 1. A method, performed by a device, of providinginformation regarding at least one primary chat window, the methodcomprising: acquiring a plurality of messages included in the at leastone primary chat window; determining that a specific event has occurred,based on the acquired plurality of messages; generating a secondary chatwindow for informing a user of the device about the occurred event; anddisplaying guidance information about the occurred event in thesecondary chat window.
 2. The method of claim 1, wherein the displayingthe guidance information about the occurred event comprises displayingthe guidance information in the secondary chat window in an interactiveform.
 3. The method of claim 1, wherein the displaying the guidanceinformation about the occurred event comprises: generating a summarymessage related to the occurred event; and displaying the generatedsummary message in the secondary chat window, wherein the summarymessage comprises: an identification value of at least one other userwho has transmitted a message related to the occurred event, and aphrase describing the occurred event.
 4. The method of claim 3, whereinthe phrase describing the occurred event is determined according to aspeech pattern of the other user.
 5. The method of claim 3, wherein thesummary message further comprises an identification value of a groupincluding a plurality of other users, and the phrase describing theoccurred event.
 6. The method of claim 1, wherein the displaying theguidance information about the occurred event comprises: generating acomment message related to the occurred event based on scheduleinformation about the user; and displaying the generated comment messagein the secondary chat window.
 7. The method of claim 1, wherein thedisplaying the guidance information about the occurred event comprises:searching for information related to the occurred event based on akeyword in a message related to the occurred event; and displayingretrieved information in the secondary chat window.
 8. The method ofclaim 1, wherein the displaying the guidance information about theoccurred event comprises: generating a recommended response messagerelated to the occurred event; and displaying the generated recommendedresponse message in the secondary chat window.
 9. The method of claim 8,wherein the generating the recommended response message related to theoccurred event comprises generating the recommended response message byediting a response input of the user in response to the occurred event.10. The method of claim 8, further comprising: receiving a user inputfor selecting the recommended response message; and transmitting,through a chat window including the message related to the occurredevent, the selected recommended response message to another user in thechat window.
 11. A device comprising: a display; a processor; and amemory configured to store instructions which, when executed by theprocessor, cause the processor to: provide information regarding atleast one chat primary window through the display, acquire a pluralityof messages included in the at least one primary chat window, determinethat a specific event has occurred, based on the acquired plurality ofmessages, generate a secondary chat window for informing a user of thedevice about the occurred event, and display guidance information aboutthe occurred event in the secondary chat window.
 12. The device of claim11, wherein the memory is further configured to store additionalinstructions which, when executed by the processor, cause the processorto: generate a summary message related to the occurred event, anddisplay the generated summary message in the secondary chat window,wherein the summary message comprises: an identification value of atleast one other user who has transmitted a message related to theoccurred event, and a phrase describing the occurred event.
 13. Thedevice of claim 12, wherein the phrase describing the occurred event isdetermined according to a speech pattern of the other user.
 14. Thedevice of claim 12, wherein the summary message further comprises anidentification value of a group including a plurality of other users,and the phrase describing the occurred event.
 15. The device of claim11, wherein the memory is further configured to store additionalinstructions which, when executed by the processor, cause the processorto: generate a comment message related to the occurred event by usingschedule information about the user; and display the generated commentmessage in the secondary chat window.
 16. The device of claim 11,wherein the memory is further configured to store additionalinstructions which, when executed by the processor, cause the processorto: search for information related to the occurred event by using akeyword in a message related to the occurred event; and displayretrieved information in the secondary chat window.
 17. The device ofclaim 11, wherein the memory is further configured to store additionalinstructions which, when executed by the processor, cause the processorto: generate a recommended response message related to the occurredevent; and display the generated recommended response message in thesecondary chat window.
 18. The device of claim 17, wherein therecommended response message is generated by editing a response input ofthe user in response to the occurred event.
 19. The device of claim 17,wherein the memory is further configured to store additionalinstructions which, when executed by the processor, cause the processorto: receive a user input for selecting the recommended response message;and transmit, through a chat window including the message related to theoccurred event, the selected recommended response message to anotheruser in the chat window.
 20. A non-transitory computer-readablerecording medium having recorded thereon a computer-executable programfor performing a method comprising: acquiring a plurality of messagesincluded in the at least one primary chat window; determining that aspecific event has occurred, based on the acquired plurality ofmessages; generating a secondary chat window for informing a user of thedevice about the occurred event; and displaying guidance informationabout the occurred event in the secondary chat window.